<template>
    <div>
        <div class="cell" @click="toPhone('4')">
            <div>修改绑定手机号</div>
            <svg aria-hidden="true" class="right">
                <use xlink:href="#icon-chevronright"></use>
            </svg>
        </div>
        <div class="line"></div>
        <div class="cell" @click="toPhone('8')">
            <div>解冻账号</div>
            <svg aria-hidden="true" class="right">
                <use xlink:href="#icon-chevronright"></use>
            </svg>
        </div>
        <div class="line-10"></div>
        <div class="cell" @click="toPhone('6')">
            <div>设置安全密码</div>
            <svg aria-hidden="true" class="right">
                <use xlink:href="#icon-chevronright"></use>
            </svg>
        </div>
        <div class="line-10"></div>
        <div class="cell" @click="toPhone('5')">
            <div>修改安全密码</div>
            <svg aria-hidden="true" class="right">
                <use xlink:href="#icon-chevronright"></use>
            </svg>
        </div>
        <div class="line"></div>
        <div class="cell" @click="toPhone('3')">
            <div>修改登录密码</div>
            <svg aria-hidden="true" class="right">
                <use xlink:href="#icon-chevronright"></use>
            </svg>
        </div>
        <div class="line-10"></div>
        <div class="cell" @click="withdrawAccount">
            <div>退出账号</div>
            <svg aria-hidden="true" class="right">
                <use xlink:href="#icon-chevronright"></use>
            </svg>
        </div>
        <van-popup v-model="withdrawState"
                   position="bottom"
                   :lazy-render="false"
                   :overlay="true"
                   overlay-class="poppo">
            <div class="pop">
                <p class="p1">您确定退出当前{{systemItem.brandname}}商城{{systemItem.name}}系统</p>
                <p class="p1">ID：{{uid}}的登录状态</p>
                <div class="line"></div>
                <p class="p2" @click="loginOut">退出登录</p>
                <div class="line-5"></div>
                <p class="p2" @click="hideWithdraw">取消</p>
            </div>
        </van-popup>
    </div>
</template>

<script>
    import {Toast} from 'vant';

    export default {
        /**
         * 设置
         * */
        data() {
            return {
                withdrawState: false,
                systemItem: this.$store.state.login.systemData,
                uid: this.$store.state.login.userInfo.uid
            };
        },
        computed: {},
        components: {confirm},
        watch: {
            // 监听具体数据变化，并做相应的处理
        },
        methods: {
            toPhone(val) {
                this.$router.push({
                    name: 'phone',
                    query: {
                        type: val
                    }
                });
            },
            withdrawAccount() {
                //    退出账号
                console.log(111,);
                this.withdrawState = true;
            },
            hideWithdraw() {
                //    隐藏
                this.withdrawState = false;
            },
            hideWithdraw2() {
                //    隐藏
                this.withdrawState = false;
                Toast('您已退出登录');
                this.$router.push('front');
            },
            loginOut() {
                //    退出登录
                this.$store.commit('setToken', ''); // 把本地token删掉就行
                this.$store.commit('setTokenType', '');
                this.$store.commit('setUserInfo', ''); // 把本地用户信息删掉就行
                this.$store.commit('refer', ''); // 把本地推荐人信息清掉
                //  更新tokenArray（删除对应的token）
                let tokenArray = JSON.parse(localStorage.getItem('tokenArray'));
                let system = this.$store.state.login.system;
                delete tokenArray[system];
                this.$store.commit('setTokenArray', tokenArray);
                this.hideWithdraw2();
                this.$router.push({
                    name: 'welcome',
                    query: {
                        system: system
                    }
                });
            },
        },
        beforeCreate() {
            // 可以在这加个loading事件，在加载实例时触发
            // 这个阶段实例的data、methods是读不到的
        },
        created() {
            // this.request.get('/user/system', {system: this.$store.state.login.system}).then((res) => {
            //     this.$store.commit('setSystemData', res);
            // });
        },
        beforeMount() {
            // 相关的 render 函数首次被调用。
        },
        mounted() {
            // 挂载元素，获取到DOM节点
            // el选项的DOM节点 被新创建的 vm的el 替换，并挂载到实例上去之后调用此生命周期函数。此时实例的数据在DOM节点上进行渲染
        },
        beforeUpdate() {
            // 数据更新时调用，但不进行DOM重新渲染，在数据更新时DOM没渲染前可以在这个生命函数里进行状态处理
        },
        updated() {
            //  如果对数据统一处理，在这里写上相应函数
            // 这个状态下数据更新并且DOM重新渲染，当这个生命周期函数被调用时，组件 DOM 已经更新，所以你现在可以执行依赖于 DOM 的操作。当实例每次进行数据更新时updated都会执行
        },
        beforeDestroy() {
            // 可以做一个确认停止事件的确认框
        },
        destroyed() {
            // Vue 实例销毁后调用。调用后，Vue 实例指示的所有东西都会解绑定，所有的事件监听器会被移除，所有的子实例也会被销毁
        }
    };

</script>

<style scoped lang="stylus" rel="stylesheet/stylus">
    @import '~assets/main.styl'
    .cell {
        cell()
        .right {
            arrow()
        }
    }

    >>> .van-overlay {
        background-color: rgba(0, 0, 0, .5);
    }

    .pop {
        flex-y(flex-start, center)
        padding-top 3vw
        .p1 {
            word-vw(word12, gray9)
            line-height vw(20)
        }
        .p2 {
            word-vw(word14, main-color)
            line-height vw(48)
        }
    }
</style>
